A Formally-Verified Alias Analysis

نویسندگان

  • Valentin Robert
  • Xavier Leroy
چکیده

This paper reports on the formalization and proof of soundness, using the Coq proof assistant, of an alias analysis: a static analysis that approximates the flow of pointer values. The alias analysis considered is of the points-to kind and is intraprocedural, flow-sensitive, field-sensitive, and untyped. Its soundness proof follows the general style of abstract interpretation. The analysis is designed to fit in the CompCert C verified compiler, supporting future aggressive optimizations over memory accesses.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Alias and Change Calculi, Applied to Frame Inference

Alias analysis, which determines whether two expressions in a program may reference to the same object, has many potential applications in program construction and verification. We have developed a theory for alias analysis, the “alias calculus”, implemented its application to an object-oriented language, and integrated the result into a modern IDE. The calculus has a higher level of precision ...

متن کامل

An Improved Differential Fixpoint Iteration Method for Program Analysis

We present a differential fixpoint iteration method to be used in static program analyses. The differential method consists of two phases: first we transform the program analysis equations into differential ones, and then we apply a differential fixpoint iteration to the equations computing with the differences from the previous iterations. We implemented the method for the exception analysis o...

متن کامل

Inferring Alias Contracts in VCC using Separation Analysis

The main goal of this work is to enable an interplay between two different verification tool chains: Frama-C, developed concomitantly by Commissariat à l’Énergie Atomique et aux Énergies Alternatives and Inria, and the Verified C Compiler, developed by Microsoft Research. Both tools have a long history and contain powerful algorithms for static verification of C source code. Both tools address ...

متن کامل

Tokeneer: Beyond Formal Program Verification

Tokeneer is a small-sized (10 kloc) security system which was formally developed and verified by Praxis at the request of NSA, using SPARK technology. Since its open-source release in 2008, only two problems were found, one by static analysis, one by code review. In this paper, we report on experiments where we systematically applied various static analysis tools (compiler, bug-finder, proof to...

متن کامل

A Csp-based Trajectory for Designing Formally Verified Embedded Control Software*)

This paper presents in a nutshell a procedure for producing formally verified concurrent software. The design paradigm provides means for translating block-diagrammed models of systems from various problem domains in a graphical notation for process-oriented architectures. Briefly presented CASE tool allows code generation both for formal analysis of the models of software and code generation i...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2012